package com.amsp.oa.oademo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

@Data
@TableName("fixed_asset_inventory")
@ApiModel(value = "固定资产盘点")
public class FixedAssetInventory {

    @TableId(type = IdType.AUTO)
    @ApiModelProperty("主键ID")
    private Long id;

    @ApiModelProperty("资产编号")
    private String assetCode;

    @ApiModelProperty("资产名称")
    private String assetName;

    @ApiModelProperty("规格型号")
    private String specification;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty("购入日期")
    private LocalDate purchaseDate;

    @ApiModelProperty("单位")
    private String unit;

    @ApiModelProperty("初盘数")
    private Integer initialCount;

    @ApiModelProperty("复盘数量")
    private Integer recheckCount;

    @ApiModelProperty("抽盘数量")
    private Integer sampleCount;

    @ApiModelProperty("原价")
    private BigDecimal originalPrice;

    @ApiModelProperty("累计折旧")
    private BigDecimal accumulatedDepreciation;

    @ApiModelProperty("净值")
    private BigDecimal netValue;

    @ApiModelProperty("所属部门")
    private String department;

    @ApiModelProperty("存放位置")
    private String storageLocation;

    @ApiModelProperty("管理责任人")
    private String responsiblePerson;

    @ApiModelProperty("备注")
    private String remarks;

    @ApiModelProperty("审核人")
    private String reviewer;

    @ApiModelProperty("确认人")
    private String confirmer;

    @ApiModelProperty("抽盘人")
    private String sampler;

    @ApiModelProperty("复盘人")
    private String rechecker;

    @ApiModelProperty("初盘人")
    private String initialChecker;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @ApiModelProperty("更新时间")
    private LocalDateTime updateTime;
}